package jdbc419.utils;

import java.sql.*;

/**
 * @Author:SA
 * @DATA:DATA
 * jdbc 工具类 方法会设计成静态方法  通过类名直接方法
 *  1.获取连接
 *  2.释放资源
 */

public final class JDBCUtil {

    //构造方法私有化  阻止用户创建对象  调用方法要通过类名调用
    private  JDBCUtil(){}

    //获取连接的方法
    public  static Connection getConnection(){
        Connection connection = null;
        try {
            //硬编码 切库要进入源码修改   解决方案->读取配置文件
            Class.forName("com.mysql.jdbc.Driver");
            String url = "jdbc:mysql://localhost:3306/my?useSSL=false&characterEncoding=utf8&serverTimezone=UTC";
            String user = "root";
            String password = "root";
            connection = DriverManager.getConnection(url, user, password);

        } catch (Exception e) {
            e.printStackTrace();
        }

        return connection;
    }

    //释放资源
    public  static  void closeAll(ResultSet rs, Statement statement,Connection connection){
        try {
            if(rs!=null)
            rs.close();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        try {
            if(statement!=null)
                statement.close();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        try {
            if(connection!=null)
                connection.close();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }

    }


}
